LEADTOOLS JPEG 2000 (Leadtools.Jpeg2000 assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
ExtractFramesMemory(String,List<Int32>) Method
See Also 
Leadtools.Jpeg2000 Namespace > Jpeg2000Engine Class > ExtractFramesMemory Method : ExtractFramesMemory(String,List<Int32>) Method



fileName
System.String containing the name of the JPEG 2000 file from which the frames are being extracted.
frames
Frame indices. A list of integers specifying the indices of the frames to be extracted from the input file. All indices should be 0-based.
fileName
System.String containing the name of the JPEG 2000 file from which the frames are being extracted.
frames
Frame indices. A list of integers specifying the indices of the frames to be extracted from the input file. All indices should be 0-based.
Extracts specific frames from the input file, and saves them to a new JPEG 2000 file in a byte array. This file contains only the extracted frame headers/codestreams (not any obtained through the decompressing/recompressing process) so it saves processor time and memory. This method is available in the Document/Medical Toolkits.

Syntax

Visual Basic (Declaration) 
Overloads Public Function ExtractFramesMemory( _
   ByVal fileName As String, _
   ByVal frames As List(Of Integer) _
) As Byte()
Visual Basic (Usage)Copy Code
Dim instance As Jpeg2000Engine
Dim fileName As String
Dim frames As List(Of Integer)
Dim value() As Byte
 
value = instance.ExtractFramesMemory(fileName, frames)
C# 
public byte[] ExtractFramesMemory( 
   string fileName,
   List<int> frames
)
C++/CLI 
public:
array<byte>^ ExtractFramesMemory( 
   String^ fileName,
   List<int>^ frames
) 

Parameters

fileName
System.String containing the name of the JPEG 2000 file from which the frames are being extracted.
frames
Frame indices. A list of integers specifying the indices of the frames to be extracted from the input file. All indices should be 0-based.

Return Value

A byte array that contains a JPEG 2000 file with only the extracted frames.

Example

Visual BasicCopy Code
Private Function ExtractFramesMemoryStringExample(ByVal frames As List(Of Integer)) As Byte()
      Dim engine As New Jpeg2000Engine()

      Dim fileInfo As Jpeg2000FileInformation = engine.GetFileInformation(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx"))

      For i As Integer = 0 To frames.Count - 1
         If (frames(i) >= fileInfo.Frame.GetLength(0)) Then
            Return Nothing
         End If
      Next i
      Return engine.ExtractFramesMemory(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx"), frames)
   End Function

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public byte[] ExtractFramesMemoryStringExample(List<int> frames)
   {
      Jpeg2000Engine engine = new Jpeg2000Engine();

      Jpeg2000FileInformation fileInfo = engine.GetFileInformation(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx"));

      for (int i = 0; i < frames.Count; i++)
         if (frames[i] >= fileInfo.Frame.GetLength(0))
            return null;
      return engine.ExtractFramesMemory(Path.Combine(LEAD_VARS.ImagesDir, "image1.jpx"), frames);
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}

Remarks

. This method is very suitable for server applications where multiple clients request specific frames of a JPEG 2000 file. Instead of decompressing and then recompressing the frames this method copies only the needed frame data, saving the data to a new JPEG 2000 file.

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also

Leadtools.Jpeg2000 requires a Document or Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features